﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using RESTServices.Dominio;
using System.Data.SqlClient;

namespace RESTServices.Persistencia
{
    public class DetalleDAO
    {

        public DetalleProyecto Crear(DetalleProyecto detalleACrear)
        {
            DetalleProyecto detalleCreado = null;
            string sql = "insert into detalle_proyecto values (@coddet, @codpro, @codcli, @codper, @codgra, @candet)";
            using (SqlConnection con = new SqlConnection(ConexionUtil.Cadena))
            {
                
                con.Open();
                using (SqlCommand com = new SqlCommand(sql, con))
                {
                    com.Parameters.Add(new SqlParameter("@coddet", detalleACrear.cod_det));
                    com.Parameters.Add(new SqlParameter("@codpro", detalleACrear.cod_pro));
                    com.Parameters.Add(new SqlParameter("@codcli", detalleACrear.cod_cli));
                    com.Parameters.Add(new SqlParameter("@codper", detalleACrear.cod_per));
                    com.Parameters.Add(new SqlParameter("@codgra", detalleACrear.cod_gra));
                    com.Parameters.Add(new SqlParameter("@candet", detalleACrear.can_det));
                    com.ExecuteNonQuery();
                }
            }
            detalleCreado = Obtener(detalleACrear.cod_det);
            return detalleCreado;
        }

        public DetalleProyecto Obtener(int cod_det)
        {
            DetalleProyecto detalleEncontrado = null;
            string sql = "Select * from detalle_proyecto where cod_det=@coddet";
            using (SqlConnection con = new SqlConnection(ConexionUtil.Cadena))
            {
                
                con.Open();
                using (SqlCommand com = new SqlCommand(sql, con))
                {
                    com.Parameters.Add(new SqlParameter("@coddet", cod_det));
                    using (SqlDataReader resultado = com.ExecuteReader())
                    {
                        if (resultado.Read())
                        {
                            detalleEncontrado = new DetalleProyecto()
                            {
                                cod_det = (int)resultado["cod_det"],
                                cod_pro = (int)resultado["cod_pro"],
                                cod_cli = (int)resultado["cod_cli"],
                                cod_per = (int)resultado["cod_gra"],
                                cod_gra = (int)resultado["cod_det"],
                                can_det = (int)resultado["can_det"]
                            };
                        }
                    }
                }
            }
            return detalleEncontrado;
        }
    }
}